1. Field of the Invention
The specification relates to a system and method for implementing a service oriented architecture that supports complex event processing and business activity monitoring. In particular, the specification relates to an application programming interface or a unified server for communicating with devices and their clouds.
2. Description of the Background Art
Consumers have a variety of consumer electronic devices to choose from. A problem arises, however, because consumers frequently use devices from different vendors. Each vendor's device is operated in a certain way, which makes it difficult for the consumers to interact with and adjust to those devices. As a result, the discrepancies delay the cooperation of the devices.
For example, when a business organizes a meeting in a conference room, employees use mobile devices, the room includes a projector for projecting slides and other users connect to the meeting remotely using their laptops. The remote users can employ video conferencing software to view the slides in real-time, however the software frequently malfunctions, the access code for the meeting is not sent to all the participants, etc. In addition, this setup requires a user to come into the room before the event, turn on devices, download presentations to the laptop, etc., which is time consuming and could delay the meeting when the devices experience technical difficulties.
One solution is to develop applications that interface with the application programming interface (API) for each device. Since each vendor's device has a different API from the rest of the competitors, it is difficult for application developers to adjust to all possible APIs and develop applications efficiently.
In addition, when a cloud is attached to a particular device, only device-centric data can be logged in the cloud. As a result, all user-to-machine interactions are fragmented in the individual clouds. As a result, the content value in each cloud is low as the system cannot get a holistic view of the data and usage pattern that a user may have produced in a collection of disparate devices.
It is also difficult to update the devices' backends because each device has a different backend or server that the customer has to install and manage if hosted privately, or interface with if used publicly. Since each device has a different backend, the user has to update each device backend separately. Furthermore, the data about each device resides in a separate system resulting in device data fragmentation and eliminating the opportunity to correlate device data.
One solution is to purchase a host of products that are all produced by the same corporation. For example, consumers can purchase an iPhone for mobile needs, a Macintosh for a laptop, an Apple Airport for managing the WiFi devices and an AppleTV for watching television. These products, however, are more expensive than other devices and are impractical for businesses.